<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>

        // es6  新增语法   Proxy  数据代理


        const obj = {
            name : 'cc' ,
            age : 20
        }

        // const res = new Proxy(obj , {   // 自带遍历
        //     get(target , property) {
        //         return target[property]
        //     } , 
        //     set(target , property , val) {
        //         target[property] = val
        //     }
        // })

        const res = new Proxy(obj , {
            get(o , key) {   // o 和 key只是形参
                return o[key]
            } , 
            set(o , key , val) {
                o[key] = val ;

            }
        })


        console.log(res);


        // 原数据发生改变时，也可以正常数据代理
        obj.sex = '女' ;
        console.log(res.sex);


    </script>
    
</body>
</html>